327 research outputs found

    Recaf: Java dialects as libraries

    Get PDF
    Mainstream programming languages like Java have limited support for language extensibility. Without mechanisms for syntactic abstraction, new programming styles can only be embedded in the form of libraries, limiting expressiveness. In this paper, we present Recaf, a lightweight tool for creating Java dialects; effectively extending Java with new language constructs and user defined semantics. The Recaf compiler generically transforms designated method bodies to code that is parameterized by a semantic factory (Object Algebra), defined in plain Java. The implementation of such a factory defines the desired runtime semantics. We applied our design to produce several examples from a diverse set of programming styles and two case studies: We define i) extensions for generators, asynchronous computations and asynchronous streams and ii) a Domain-Specific Language (DSL) for Parsing Expression Grammars (PEGs), in a few lines of code

    Recaf: Java dialects as libraries

    Get PDF
    Mainstream programming languages like Java have limited support for language extensibility. Without mechanisms for syntactic abstraction, new programming styles can only be embedded in the form of libraries, limiting expressiveness. In this paper, we present Recaf, a lightweight tool for creating Java dialects; effectively extending Java with new language constructs and user defined semantics. The Recaf compiler generically transforms designated method bodies to code that is parameterized by a semantic factory (Object Algebra), defined in plain Java. The implementation of such a factory defines the desired runtime semantics. We applied our design to produce several examples from a diverse set of programming styles and two case studies: We define i) extensions for generators, asynchronous computations and asynchronous streams and ii) a Domain-Specific Language (DSL) for Parsing Expression Grammars (PEGs), in a few lines of code

    General-purpose autonomic computing

    Get PDF
    The success of mainstream computing is largely due to the widespread availability of general-purpose architectures and of generic approaches that can be used to solve real-world problems cost-effectively and across a broad range of application domains. In this chapter, we propose that a similar generic framework is used to make the development of autonomic solutions cost effective, and to establish autonomic computing as a major approach to managing the complexity of today’s large-scale systems and systems of systems. To demonstrate the feasibility of general-purpose autonomic computing, we introduce a generic autonomic computing framework comprising a policy-based autonomic architecture and a novel four-step method for the effective development of self-managing systems. A prototype implementation of the reconfigurable policy engine at the core of our architecture is then used to develop autonomic solutions for case studies from several application domains. Looking into the future, we describe a methodology for the engineering of self-managing systems that extends and generalises our autonomic computing framework further

    Dynamics of a lattice Universe

    Get PDF
    We find a solution to Einstein field equations for a regular toroidal lattice of size L with equal masses M at the centre of each cell; this solution is exact at order M/L. Such a solution is convenient to study the dynamics of an assembly of galaxy-like objects. We find that the solution is expanding (or contracting) in exactly the same way as the solution of a Friedman-Lema\^itre-Robertson-Walker Universe with dust having the same average density as our model. This points towards the absence of backreaction in a Universe filled with an infinite number of objects, and this validates the fluid approximation, as far as dynamics is concerned, and at the level of approximation considered in this work.Comment: 14 pages. No figure. Accepted version for Classical and Quantum Gravit

    Choledocholithiasis: repetitive thick-slab single-shot projection magnetic resonance cholangiopancreaticography versus endoscopic ultrasonography

    Get PDF
    This prospective study compares repetitive thick-slab single-shot projection magnetic resonance cholangiopancreatography (MRCP) with endoscopic ultrasonography (EUS) for the detection of choledocholithiasis. Fifty-seven consecutive patients (36 women, mean age 61) referred for suspected choledocholithiasis underwent MRCP, followed by EUS. Each procedure was performed by different operators blinded to the results of the other investigation. MR technique included a turbo spin-echo T2-weighted axial sequence with selective fat saturation (SPIR/TSE, TE=70ms, TR=1,600ms), followed by coronal dynamic MRCP. The same thick-slab slice was sequentially acquired 12 times as breath-hold single-shot projection imaging (SSh, TE=900ms, TE=8,000ms) centred on the common bile duct (CBD). Two experienced radiologists independently and blindly evaluated MR images for the detection of CBD stones. Their inter-observer agreement kappa was determined. Secondly, the two observers read MR images in consensus again. CBD stones were demonstrated in 18 out of 57 patients (31.6 %) and confirmed by endoscopic retrograde cholangiography (ERCP, n=17) or intraoperative cholangiography (n=1). Clinical follow-up served as the "gold standard” in patients with negative results without following invasive procedure (n=28). Sensitivity, specificity, accuracy, positive and negative predictive value for MRCP resulting from consensus reading were 94.9%, 94.4%, 94.7%, 97.4% and 89.5%, respectively. Corresponding values of EUS were 97.4%, 94.4%, 96.5%, 97.4% and 94.4%. Inter-observer agreement kappa was 0.81. Repetitive thick-slab single-shot projection MRCP is an accurate non-invasive imaging modality for suspected choledocholithiasis and should be increasingly used to select those patients who require a subsequent therapeutic procedure, namely ERC

    Runtime Verification of Temporal Patterns for Dynamic Reconfigurations of Components

    Get PDF
    International audienceDynamic reconfigurations increase the availability and the reliability of component-based systems by allowing their architectures to evolve at runtime. Recently we have proposed a temporal pattern logic, called FTPL, to characterize the correct reconfigurations of component-based systems under some temporal and architectural constraints. As component-based architectures evolve at runtime, there is a need to check these FTPL constraints on the fly, even if only a partial information is expected. Firstly, given a generic component-based model, we review FTPL from a runtime verification point of view. To this end we introduce a new four-valued logic, called RV-FTPL (Runtime Verification for FTPL), characterizing the "potential" (un)satisfiability of the architectural constraints in addition to the basic FTPL semantics. Potential true and potential false values are chosen whenever an observed behaviour has not yet lead to a violation or satisfiability of the property under consideration. Secondly, we present a prototype developed to check at runtime the satisfiability of RV-FTPL formulas when reconfiguring a Fractal component-based system. The feasability of a runtime property enforcement is also shown. It consists in supervising on the fly the reconfiguration execution against desired RV-FTPL properties. The main contributions are illustrated on the example of a HTTP server architecture

    A Component Framework for Java-based Real-time Embedded Systems

    Get PDF
    Rank (CORE): A.International audienceThe Real-Time Specification for Java (RTSJ) is becoming a popular choice in the world of real-time and embedded programming. However, RTSJ introduces many non-intuitive rules and restrictions which prevent its wide adoption. Moreover, current state-of-the-art frameworks usually fail to alleviate the development process into higher layers of the software development life-cycle. In this paper we extend our philosophy that RTSJ concepts need to be considered at early stages of software development, postulated in our prior work, in a framework that provides continuum between the design and implementation process. A component model designed specially for RTSJ serves here as a cornerstone. As the first contribution of this work, we propose a development process where RTSJ concepts are manipulated independently from functional aspects. Second, we mitigate complexities of RTSJ-development by automatically generating execution infrastructure where real-time concerns are transparently managed. We thus allow developers to create systems for variously constrained real-time and embedded environments. Performed benchmarks show that the overhead of the framework is minimal in comparison to manually written object-oriented approach, while providing more extensive functionality. Finally, the framework is designed with the stress on dynamic adaptability of target systems, a property we envisage as a fundamental in an upcoming era of massively developed real-time systems

    Wide binaries as a critical test of Classical Gravity

    Full text link
    Modified gravity scenarios where a change of regime appears at acceleration scales a<a0a<a_{0} have been proposed. Since for 1M1 M_{\odot} systems the acceleration drops below a0a_{0} at scales of around 7000 AU, a statistical survey of wide binaries with relative velocities and separations reaching 10410^{4} AU and beyond should prove useful to the above debate. We apply the proposed test to the best currently available data. Results show a constant upper limit to the relative velocities in wide binaries which is independent of separation for over three orders of magnitude, in analogy with galactic flat rotation curves in the same a<a0a<a_{0} acceleration regime. Our results are suggestive of a breakdown of Kepler's third law beyond aa0a \approx a_{0} scales, in accordance with generic predictions of modified gravity theories designed not to require any dark matter at galactic scales and beyond.Comment: accepted for publication in EPJ

    Multilevel Contracts for Trusted Components

    Full text link
    This article contributes to the design and the verification of trusted components and services. The contracts are declined at several levels to cover then different facets, such as component consistency, compatibility or correctness. The article introduces multilevel contracts and a design+verification process for handling and analysing these contracts in component models. The approach is implemented with the COSTO platform that supports the Kmelia component model. A case study illustrates the overall approach.Comment: In Proceedings WCSI 2010, arXiv:1010.233
    corecore